[VB6]关于提取 指定格式字符串 的问题

来源:百度知道 编辑:UC知道 时间:2024/05/21 06:35:01
比方说有一个字符串
StrX="一二三 反反复复DB20071103619406212弹道导弹"

怎么提取中间的"DB20071103619406212"出来

已知的只有"DB20071103619406212"的格式为

[D,d][B,b]#################

说详细一点就是有一个字符串
格式是
DB开头,有可能是小写,也有可能一个大写一个小写
接下来是17个数字

这个是一个字符串的格式

这个字符串前后都有可能还有别的字符
但是特定的格式是不变的
即 DB+17个数字

我怎么才可以把他从一个 前后都有别的字符的字符串中提取出来

17个数字有可能改变

Private Sub Command1_Click()
Dim StrX$
StrX = "dB一二Db342三 反db反复复Db20071103619406212弹道导弹"
'开始,呵呵

Dim i%, a$, FindStr$
a = UCase(StrX)
For i = 0 To 9
a = Replace(a, CStr(i), "妮")
Next
i = InStr(a, "DB" & String(17, "妮"))
If i <> 0 Then FindStr = Mid(StrX, i, 19)
End Sub

我记得这个问题已经给你回复过了 ?
怎么还问啊

Private Sub Form_Load()
Dim strx As String, s As String
strx = "一二三 反反复复DB20071103619406212弹道导弹"
s = Mid(strx, InStr(1, UCase(strx), "DB"), 19)
MsgBox s
End Sub